package com.ftg.learn.chapter09.listtest;

import lombok.SneakyThrows;

import java.util.*;

/**
 * 循环位移列表
 * 编写一个函数，接受一个整数列表和一个非负整数K，将列表中的元素循环右移K次。
 *
 * @author lijiaxin
 * @version 1.0
 * @date 2023/8/16 15:15
 */

public class Move {

    @SneakyThrows
    public static void main(String[] args) {

        System.out.println("输入一个非负整数");
        Scanner scanner=new Scanner(System.in);
        int s=scanner.nextInt();
        if(s<=0){
            throw new Exception("重新输入一个非负整数");
        }
        Queue<Integer> list=new LinkedList<>();
        System.out.println("输入整数列表中数的个数");
        int count=scanner.nextInt();
        int num;
        System.out.println("输入数字");
        for (int i = 0; i < count; i++) {
            num= scanner.nextInt();
            list.add(num);
        }
        System.out.println(list);
        for (int i = 0; i <s; i++) {
            list.add(list.poll());
        }
        System.out.println("右移"+s+"位后："+ list);
    }
}
